<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
</head>

<body>
    <div id="root">
        <Child>
            <template slot-scope="props">
                <h1>{{props.item}}</h1>
            </template>
        </Child>
    </div>
    <script>
        Vue.component( 'Child', {
            data: function () {
                return {
                    list: [ 1, 2, 3, 4 ]
                }
            },
            template: `<div>
                <ul>
                    <slot v-for="item of list" :item=item>
                        </slot>
                    </ul>
                </div>`
        } )
        var vm = new Vue( {
            el: '#root',
        } )
    </script>
</body>

</html>